package com.ruoyi.hxqProject.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 项目管理对象 hxq_project
 * 
 * @author ruoyi
 * @date 2025-02-18
 */
public class HxqProject extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 项目唯一标识符 */
    private Long id;

    /** 名称 */
    @Excel(name = "名称")
    private String projectName;

    /** 简介 */
    @Excel(name = "简介")
    private String introduction;

    /** 流程描述 */
    @Excel(name = "流程描述")
    private String processDescription;

    /** 预计时间 */
    @Excel(name = "预计时间")
    private String projectTime;

    /** 价格 */
    @Excel(name = "价格")
    private BigDecimal price;

    /** 成本预计 */
    @Excel(name = "成本预计")
    private BigDecimal basePrice;

    /** 利润率 */
    @Excel(name = "利润率")
    private BigDecimal profitMargin;

    /** 所需积分 */
    @Excel(name = "所需积分")
    private Long requiredPoints;

    /** 创建者ID, 关联employee表 */
    private Long creatorId;



    /** 分类名 */
    @Excel(name = "分类名")
    private String categoryName;

    /** 最后修改者ID, 关联employee表 */
    private Long modifierId;

    /** 记录最后更新时间 */
    private Date modifyTime;

    /** 分类 */
    @Excel(name = "分类")
    private Long categoryId;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setProjectName(String projectName) 
    {
        this.projectName = projectName;
    }

    public String getProjectName() 
    {
        return projectName;
    }
    public void setIntroduction(String introduction) 
    {
        this.introduction = introduction;
    }

    public String getIntroduction() 
    {
        return introduction;
    }
    public void setProcessDescription(String processDescription) 
    {
        this.processDescription = processDescription;
    }

    public String getProcessDescription() 
    {
        return processDescription;
    }

    public String getProjectTime() {
        return projectTime;
    }

    public void setProjectTime(String projectTime) {
        this.projectTime = projectTime;
    }

    public void setPrice(BigDecimal price)
    {
        this.price = price;
    }

    public BigDecimal getPrice() 
    {
        return price;
    }
    public void setBasePrice(BigDecimal basePrice) 
    {
        this.basePrice = basePrice;
    }

    public BigDecimal getBasePrice() 
    {
        return basePrice;
    }
    public void setProfitMargin(BigDecimal profitMargin) 
    {
        this.profitMargin = profitMargin;
    }

    public BigDecimal getProfitMargin() 
    {
        return profitMargin;
    }
    public void setRequiredPoints(Long requiredPoints) 
    {
        this.requiredPoints = requiredPoints;
    }

    public Long getRequiredPoints() 
    {
        return requiredPoints;
    }

    public String getCategoryName() {
        return categoryName;
    }

    public void setCategoryName(String categoryName) {
        this.categoryName = categoryName;
    }

    public void setCreatorId(Long creatorId)
    {
        this.creatorId = creatorId;
    }

    public Long getCreatorId() 
    {
        return creatorId;
    }
    public void setModifierId(Long modifierId) 
    {
        this.modifierId = modifierId;
    }

    public Long getModifierId() 
    {
        return modifierId;
    }
    public void setModifyTime(Date modifyTime) 
    {
        this.modifyTime = modifyTime;
    }

    public Date getModifyTime() 
    {
        return modifyTime;
    }
    public void setCategoryId(Long categoryId) 
    {
        this.categoryId = categoryId;
    }

    public Long getCategoryId() 
    {
        return categoryId;
    }



    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("projectName", getProjectName())
            .append("introduction", getIntroduction())
            .append("processDescription", getProcessDescription())
            .append("projectTime", getProjectTime())
            .append("price", getPrice())
            .append("basePrice", getBasePrice())
            .append("profitMargin", getProfitMargin())
            .append("requiredPoints", getRequiredPoints())
            .append("creatorId", getCreatorId())
            .append("modifierId", getModifierId())
            .append("createTime", getCreateTime())
            .append("modifyTime", getModifyTime())
            .append("categoryId", getCategoryId())
            .toString();
    }
}
